#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    _font = ui->lineEdit->font();

    const int sn = 10000; //默认展示10秒

    ui->lineEdit->setToolTip("结果内容展示");
    ui->lineEdit->setToolTipDuration(sn);

    ui->lineEdit_fonts->setToolTip("输入有效字体");
    ui->lineEdit_fonts->setToolTipDuration(sn);

    ui->pbt_setword->setToolTip("点击字体生效");
    ui->pbt_setword->setToolTipDuration(sn);

    ui->lineEdit_wordsz->setToolTip("输入8-72范围的像素大小，超出范围无效");
    ui->lineEdit_wordsz->setToolTipDuration(sn);

    ui->pbt_setsz->setToolTip("点击字体大小生效");
    ui->pbt_setsz->setToolTipDuration(sn);

    ui->pbt_bold->setToolTip("点击设置粗体或取消粗体");
    ui->pbt_bold->setToolTipDuration(sn);

    ui->pbt_italic->setToolTip("点击设置斜体或取消斜体");
    ui->pbt_italic->setToolTipDuration(sn);

    ui->pbt_underline->setToolTip("点击设置下划线或取消下划线");
    ui->pbt_underline->setToolTipDuration(sn);

    ui->pbt_strikeOut->setToolTip("点击设置删除线或取消删除线");
    ui->pbt_strikeOut->setToolTipDuration(sn);
}

Widget::~Widget()
{
    delete ui;
}

//设置字体
void Widget::on_pbt_setword_clicked()
{
    //这里可以加一些判断让字体参数符合要求
    _font.setFamily(ui->lineEdit_fonts->text());
    setFont();
}

void Widget::setFont()
{
    ui->lineEdit->setFont(_font);
}

//设置大小
void Widget::on_pbt_setsz_clicked()
{
    int sz = ui->lineEdit_wordsz->text().toInt();
    if(sz > 72 || sz < 8) return; //最大72 最小8
    _font.setPointSize(sz);
    setFont();
}

//设置粗细
void Widget::on_pbt_bold_clicked()
{
    _font.setBold(!_font.bold());
    setFont();
}

//设置倾斜
void Widget::on_pbt_italic_clicked()
{
    _font.setItalic(!_font.italic());
    setFont();
}

//设置下划线
void Widget::on_pbt_underline_clicked()
{
    _font.setUnderline(!_font.underline());
    setFont();
}

//设置删除线
void Widget::on_pbt_strikeOut_clicked()
{
    _font.setStrikeOut(!_font.strikeOut());
    setFont();
}
